Since its inception in 1995, the Java™ programming language has become increasingly popular. (Java™ is a trademark of Sun Microsystems, Inc.) Java, which is an interpreted language, enabled the creation of applications which could be run on a wide variety of platforms. This ability to function across a variety of different client platforms, i.e., platform independence, and Java's relatively easy implementation of network applications has resulted in the use of Java, as well as other programming languages that provide platform independence, in endeavors as basic as personal web pages to endeavors as complex as large business-to-business enterprise systems.
However, since applications that are designed to provide functionality over networked systems are necessarily designed to rely upon frequent connectivity in order for the applications to function, such applications are often rendered useless when connectivity is unreliable. For example, many applications require frequent interactive transmission with a remote server. Such applications often wait for replies and confirmations for any transmissions before proceeding to a next step. Additionally, since such conventional applications cannot function without server/client connectivity, servers are often forced to devote resources to relatively unimportant responses to remote clients, without which the remote applications would be held up.
What is needed is an improved mechanism for managing server/client interaction.